<!DOCTYPE html>
<html lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimal-ui">
<title>登录 - {$xpConfig['web_name']}</title>
<link rel="shortcut icon" type="image/x-icon" href="{$xpConfig['web_static']}/favicon.ico">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-touch-fullscreen" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="default">
<link rel="stylesheet" type="text/css" href="{$xpConfig['web_static']}/css/materialdesignicons.min.css">
<link rel="stylesheet" type="text/css" href="{$xpConfig['web_static']}/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="{$xpConfig['web_static']}/css/animate.min.css">
<link rel="stylesheet" type="text/css" href="{$xpConfig['web_static']}/css/style.min.css">
<style>
.signin-form .has-feedback {
    position: relative;
}
.signin-form .has-feedback .form-control {
    padding-left: 36px;
}
.signin-form .has-feedback .mdi {
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    width: 36px;
    height: 36px;
    line-height: 36px;
    z-index: 4;
    color: #dcdcdc;
    display: block;
    text-align: center;
    pointer-events: none;
}
.signin-form .has-feedback.row .mdi {
    left: 15px;
}
.signin-form .form-group:last-child,
.login-right p:last-child {
    margin-bottom: 0px;
}
.login-right {
    background: #67b26f!important;
    background: -moz-linear-gradient(45deg,#67b26f 0,#4ca2cd 100%)!important;
    background: -webkit-linear-gradient(45deg,#67b26f 0,#4ca2cd 100%)!important;
    background: linear-gradient(45deg,#67b26f 0,#4ca2cd 100%)!important;
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#67b26f', endColorstr='#4ca2cd', GradientType=1 )!important;
}
.login-box {
    max-width: 700px;
}
.login-right {
    max-width: 50%;
}
#captcha-image{
  width: 120px;
  height: 36px;
}
</style>
</head>

<body class="center-vh" style="background-image: url({$xpConfig['web_static']}/images/login-bg-3.jpg); background-size: cover;">
<div class="bg-translucent p-2">
  <div class="flex-box bg-white login-box">
    <div class="login-left p-5">
      
      <div class="text-center mb-3">
        <img alt="" src="{$xpConfig['web_static']}/images/logo-sidebar.png">
      </div>
      <form action="{:url('admin/index/login')}" method="post" class="signin-form needs-validation" novalidate>
        <div class="mb-3 has-feedback">
          <span class="mdi mdi-account" aria-hidden="true"></span>
          <input type="text" class="form-control" id="username" name="username" autocomplete="off" placeholder="用户名" required>
        </div>
    
        <div class="mb-3 has-feedback">
          <span class="mdi mdi-lock" aria-hidden="true"></span>
          <input type="password" class="form-control" id="password" autocomplete="off" name="password" placeholder="密码" required>
        </div>
        
        <div class="mb-3 has-feedback row">
          <div class="col-7">
            <span class="mdi mdi-check-all form-control-feedback" aria-hidden="true"></span>
            <input type="text" name="captcha" id="captcha" class="form-control" autocomplete="off" placeholder="验证码" required>
          </div>
          <div class="col-5 text-right">
            {:captcha_img('', 'captcha-image')}
          </div>
        </div>
        
        <div class="mb-3">
          <div class="form-check">
            <input type="checkbox" class="form-check-input" id="rememberme" name="rememberme">
            <label class="form-check-label not-user-select" for="rememberme">自动登录</label>
          </div>
        </div>
    
        <div class="mb-3 d-grid">
          <button class="btn btn-primary" type="submit">立即登录</button>
        </div>
        <div style="text-align: center; color: gray;">
            Copyright © {$year} <a target="_blank" href="{$xpConfig['web_copyright_url']}">{$xpConfig['web_short_name']} {$version}</a>. All right reserved
        </div>
      </form>
    </div>
  </div>
</div>

<script type="text/javascript" src="{$xpConfig['web_static']}/js/jquery.min.js"></script>
<script type="text/javascript" src="{$xpConfig['web_static']}/js/popper.min.js"></script>
<script type="text/javascript" src="{$xpConfig['web_static']}/js/bootstrap.min.js"></script>
<script type="text/javascript" src="{$xpConfig['web_static']}/js/bootstrap-notify.min.js"></script>
<script type="text/javascript" src="{$xpConfig['web_static']}/js/lyear-loading.js"></script>
<script type="text/javascript" src="{$xpConfig['web_static']}/js/layer/layer.js"></script>
<script type="text/javascript">
var loader;
$(document).ajaxStart(function(){
    $("button:submit").html('登录中...').attr("disabled", true);
    loader = $('button:submit').lyearloading({
        opacity: 0.2,
        spinnerSize: 'nm'
    });
}).ajaxStop(function(){
    loader.destroy();
    $("button:submit").html('立即登录').attr("disabled", false);
});
$('.signin-form').on('submit', function(event) {
    if ($(this)[0].checkValidity() === false) {
        event.preventDefault();
        event.stopPropagation();
        $(this).addClass('was-validated');
        return false;
    }
    
    var $data  = $(this).serialize();
    $.post($(this).attr('action'), $data, function(res) {
        if (res.code) {
          layer.alert('登录成功', { icon: 'success' }, function (){
            location.href = "{:url('admin/dashboard/index')}";
          });
        } else {
            layer.alert(res.msg, { icon: 'error' });
			      $('#password').val('');
            $("#captcha").val('');
            $('#captcha-image').attr('src', "{:captcha_src()}?r=" + Math.random());
        }
    }).fail(function () {
        layer.alert('服务器错误', { icon: 'error' });
    });

    return false;
});
</script>
</body>
</html>